package com.sleep.psy.external_server.business.resourse.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.sleep.psy.external_server.business.resourse.entity.ResourseScale;
import com.sleep.psy.external_server.business.resourse.entity.vo.ScaleReq;
import com.sleep.psy.external_server.result.Result;

import java.util.List;

/**
 * <p>
 * 量表资源 服务类
 * </p>
 *
 * @author wenliguo
 * @since 2025-08-12
 */
public interface ResourseScaleService extends IService<ResourseScale> {

    /**
     * 获取量表
     * @author wenliguo
     * @date 2025/6/5 16:28
     * @param req 请求参数
     * @return com.sleep.psy.main_server.result.Result
     */
    Result selectScale(ScaleReq req);

    /**
     * 通过量表id获取量表
     * @author wenliguo
     * @date 2025/8/13 09:38
     * @param scaleId 量表id
     * @return com.sleep.psy.external_server.result.Result
    */
    Result selectScaleById(Integer scaleId);


    /**
     * 通过ids查询量表
     * @author wenliguo
     * @date 2025/8/13 15:58
     * @param ids ids
     * @return java.util.List<com.sleep.psy.external_server.resourse.entity.ResourseScale>
    */
    List<ResourseScale> selectScalesByIds(List<String> ids);

    /**
     * 获取自助训练量表
     * @author wenliguo
     * @date 2025/8/28 11:22
     * @param pageNum 当前页
     * @param pageSize 每页显示条数
     * @return com.sleep.psy.external_server.result.Result
    */
    Result selectAutoTraingScales(Long pageNum, Long pageSize);
}
